/*
 * To change this template, choose Tools | Templates
 * and open the template in the editor.
 */
package model.tabelas;

import java.util.List;
import javax.swing.table.AbstractTableModel;

/**
 *
 * @author GEMADA
 */
public abstract class ClienteTableModel extends AbstractTableModel {
    
   protected String[] colunas;  
   protected List linhas;     
     
   public ClienteTableModel(List linhas) {  
      setColunas(criarColunas());  
      this.linhas = linhas;   
   }  
     
   protected abstract String[] criarColunas();  
     
    @Override
   public int getRowCount() {  
      if (linhas != null) {  
         return linhas.size();  
      } else {  
         return 0;  
      }  
   }     
     
    @Override
   public int getColumnCount() {  
      return colunas.length;  
   }     
     
    @Override
   public boolean isCellEditable(int row, int col) {  
      return false;  
    }     
     
    @Override
    public Class getColumnClass(int c) {  
        return getValueAt(0, c).getClass();  
    }        
     
    @Override
   public String getColumnName(int col){  
      return colunas[col];  
   }  
  
   public String[] getColunas() {  
      return colunas;  
   }  
     
   public void setColunas(String[] colunas) {  
      this.colunas = colunas;  
   }  
     
   public List getLinhas() {  
      return linhas;  
   }  
  
   public void setLinhas(List linhas) {  
      this.linhas = linhas;  
      fireTableDataChanged();  
   }  
}
